package com.alipay.demo.service;

import com.alipay.demo.entity.CallbackClazz;
import com.alipay.demo.entity.NotifyClazz;
import com.alipay.demo.entity.OrderClazz;

/**
 * @author: zhuzhiping
 * @description: 支付宝支付接口
 * @date: 2021/1/6 15:25
 */

public interface IAliPayService {
    /**
     * 支付
     *
     * @param orderClazz
     * @return
     */
    String pay(OrderClazz orderClazz);

    /**
     * 支付成功回调
     *
     * @return
     */
    String payCallback(CallbackClazz callbackClazz) throws Exception;

    /**
     * 提醒
     *
     * @return
     */
    String payNotify(NotifyClazz notifyClazz) throws Exception;

    /**
     * 关闭交易
     *
     * @return
     */
    String payClose(OrderClazz orderClazz) throws Exception;

    /**
     * 退款查询
     *
     * @return
     */
    String payRefundQuery(OrderClazz orderClazz) throws Exception;

    /**
     * 退款
     *
     * @param orderClazz
     * @return
     */
    String payRefund(OrderClazz orderClazz) throws Exception;

    /**
     * 交易查询
     * @param orderClazz
     * @return
     */
    String payQuery(OrderClazz orderClazz) throws Exception;
}
